Historically, diagnostic evaluation of a vehicle control system was performed by using designated, generally stand-alone-type testing equipment that was coupled to the specific vehicle's control system. Vehicle control systems have become more computerized, electronic control units have been installed in motor vehicles. These control units include one or more micro-controllers used to control operation of a variety of vehicular control systems, such as the engine, transmission, brakes or the steering mechanism.
Today in the automotive industry, there are hand-held diagnostic testers or tools used in connection with motor vehicle maintenance and repair. For instance, hand-held diagnostic tools have been used to trouble-shoot faults associated with vehicular control units. Typically such tools have included a micro-processor and an interface circuit to facilitate communication between the vehicle's electronic control unit and the tool's micro-processor. Each diagnostic tool has also included non-volatile internal or external memory, such as a plug-in module, that stores various diagnostic routines to enable the tool to communicate with a vehicle's control unit as well as provide information to a user.
However, in conventional practice, these diagnostic routines have been problematic in the area of upgrades. Typically, when a single diagnostic routine was added or modified, the new diagnostic routine to be added or modified had to be compiled and linked with the other existing routines before the combined routine, in its entirety, could be downloaded into a tool's non-volatile memory. These program upgrades and additions have therefore been difficult to accomplish and have resulted in downtime for the equipment that are inconvenient for the user.
It is therefore desirable to provide a diagnostic tool that facilitates in part easy program upgrades.